package com.itheima.service;

import com.itheima.dao.UserDao;
import com.itheima.dao.UserMapper;
import com.itheima.pojo.User;
import com.itheima.util.SessionFactoryUtils;
import org.apache.ibatis.session.SqlSession;

//业务类
public class UserService {
    //登录业务
    public boolean checkUser(User user) {
        //判断用户是否为空
        if (user == null) {
            return false;
        }

        //判断用户名密码是否为空
        if (user.getUsername().equals("") && user.getPassword().equals("")) {
            return false;
        }

        //调用方法,判断用户在数据库是否存在
        UserMapper userMapper = UserDao.getSqlSession();
        User user1 = userMapper.findUserByNameAndPwd(user.getUsername(), user.getPassword());

        //判断用户在数据库是否存在
        if (user1 != null) {
            return true;
        }
        return false;
    }

    //注册业务
    public int registerUser(User user) {
        //判断用户是否为空 : 0 为空  1 为注册成功 2 为用户已注册
        if (user == null) {
            return 0;
        }
        if (user.getUsername().equals("") && user.getPassword().equals("")) {
            return 0;
        }

        //先查询用户在数据库是否存在
        SqlSession sqlSession = SessionFactoryUtils.getSession();
        UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
        User user1 = userMapper.findUserByName(user.getUsername());

        //判断用户是否存在
        if (user1 != null) {
            //不为空,说明存在,用户已注册
            return 2;
        }

        int result = userMapper.addUser(user);
        //判断结果
        if (result > 0) {
            //提交事务
            sqlSession.commit();
        }
        return 1;
    }
}
